package com.wande.dataplatform.filecollection.domain.dto;

import lombok.Data;

import java.io.Serializable;

/**
 * 数据校验规则
 *
 * @author wande
 */
@Data
public class ValidationRule implements Serializable {

    /**
     * 字段名
     */
    private String fieldName;

    /**
     * 校验类型: NOT_NULL, FORMAT, RANGE, ENUM, UNIQUE, CUSTOM
     */
    private String validationType;

    /**
     * 校验参数(JSON)
     * - FORMAT: {"pattern": "正则表达式"}
     * - RANGE: {"min": 最小值, "max": 最大值}
     * - ENUM: {"values": ["值1", "值2"]}
     */
    private String validationParams;

    /**
     * 错误处理策略: SKIP_RECORD, MARK_ERROR, STOP_TASK
     */
    private String errorStrategy;

    /**
     * 错误提示信息
     */
    private String errorMessage;
}
